package com.rjgc.title.model.entity.user;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.rjgc.title.model.base.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**
 * @program: title-parent
 * @author: Mr.Zhuo
 * @create: 2022-04-24 23:00
 **/
@Data
@ApiModel(description = "UserInfo")
@TableName("user_info")
public class UserInfo extends BaseEntity {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "用户名称")
    @TableField("login_name")
    private String loginName;

    @ApiModelProperty(value = "用户密码")
    @TableField("passwd")
    private String passwd;

    @ApiModelProperty(value = "用户姓名")
    @TableField("name")
    private String name;

    @ApiModelProperty(value = "身份证号")
    @TableField("number_id")
    private String numberID;

    @ApiModelProperty(value = "单位")
    @TableField("company")
    private String company;

    @ApiModelProperty(value = "头像")
    @TableField("head_img")
    private String headImg;

    @ApiModelProperty(value = "证件开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @TableField("certificateValidity_from")
    private Date certificateValidityFrom;

    @ApiModelProperty(value = "证件结束")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @TableField("certificateValidity_to")
    private Date certificateValidityTo;

    @ApiModelProperty(value = "性别")
    @TableField("gender")
    private String gender;

    @ApiModelProperty(value = "民族")
    @TableField("nation")
    private String nation;

    @ApiModelProperty(value = "政治面貌")
    @TableField("political_outlook")
    private String politicalOutlook;

    @ApiModelProperty(value = "从事专业")
    @TableField("professional")
    private String professional;

    @ApiModelProperty(value = "从事专业时间开始")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @TableField("professional_time")
    private Date professionalTime;

    @ApiModelProperty(value = "出生日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @TableField("date_birth")
    private Date dateBirth;

    @ApiModelProperty(value = "最高学历")
    @TableField("highest_education")
    private String highestEducation;

    @ApiModelProperty(value = "毕业院校")
    @TableField("graduated_from")
    private String graduatedFrom;

    @ApiModelProperty(value = "毕业证书专业")
    @TableField("diploma_major")
    private String diplomaMajor;

    @ApiModelProperty(value = "毕业证取得时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @TableField("graduated_from_time")
    private Date graduatedFromTime;

    @ApiModelProperty(value = "通讯地址")
    @TableField("postal_address")
    private String postalAddress;

    @ApiModelProperty(value = "手机号码")
    @TableField("phone_num")
    private String phoneNum;

    @ApiModelProperty(value = "邮箱")
    @TableField("email")
    private String email;

    @ApiModelProperty(value = "省")
    @TableField("province")
    private String province;

    @ApiModelProperty(value = "市")
    @TableField("city")
    private String city;

}
